package com.sj.purchase.modules.cost.views.stock;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.jeecgframework.poi.excel.annotation.Excel;

import java.util.Date;

/**
 * Created by yangrd on 2017/7/19.
 */
public class InStockVO implements IStockVO<InStockVO> {

    @Excel(name = "类别-品牌-型号", width = 35)
    private String darwin;//类别-品牌-型号

    @Excel(name = "商品编码", width = 25)
    private String spuNo;//商品编码

    @Excel(name = "商品名称", width = 25)
    private String spuName;//商品名称

    @Excel(name = "sku编码", width = 25)
    private String skuNo;

    @Excel(name = "sku名称", width = 35)
    private String skuName;

    @Excel(name = "入库单号", width = 25)
    private String orderNo;//入库单号


    @Excel(name = "济南仓", width = 25)
    private Long jinanWarehouse;//济南仓

    @Excel(name = "广东仓", width = 25)
    private Long guangdongWarehouse;//广东仓

    @Excel(name = "售后", width = 25)
    private Long shouhouWarehouse;//售后

    //---->入库数量
    @Excel(name = "入库数量", width = 25)
    private Long inStockNum;

    @Excel(name = "平均成本价")
    private Double avePrice;//平均成本价(单位分)

    @Excel(name = "采购价", width = 25)
    private Double price;//采购价(单位元)

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", locale = "zh", timezone = "GMT+8")
    @Excel(name = "日期", width = 25, format = "yyyy-MM-dd")
    private Date date;//日期

    {
        jinanWarehouse = 0L;
        guangdongWarehouse = 0L;
        shouhouWarehouse = 0L;
    }

    public static InStockVO instance() {
        return new InStockVO();
    }

    public String getDarwin() {
        return darwin;
    }

    @Override
    public InStockVO setDarwin(String darwin) {
        this.darwin = darwin;
        return this;
    }

    public String getSpuNo() {
        return spuNo;
    }

    @Override
    public InStockVO setSpuNo(String spuNo) {
        this.spuNo = spuNo;
        return this;
    }

    public Double getAvePrice() {
        return avePrice;
    }

    public InStockVO setAvePrice(Double avePrice) {
        this.avePrice = avePrice;
        return this;
    }

    public String getSpuName() {
        return spuName;
    }

    @Override
    public InStockVO setSpuName(String spuName) {
        this.spuName = spuName;
        return this;
    }

    public String getSkuNo() {
        return skuNo;
    }

    @Override
    public InStockVO setSkuNo(String skuNo) {
        this.skuNo = skuNo;
        return this;
    }

    public String getSkuName() {
        return skuName;
    }

    @Override
    public InStockVO setSkuName(String skuName) {
        this.skuName = skuName;
        return this;
    }

    public String getOrderNo() {
        return orderNo;
    }

    public InStockVO setOrderNo(String orderNo) {
        this.orderNo = orderNo;
        return this;
    }

    @Override
    public Long getJinanWarehouse() {
        return jinanWarehouse;
    }

    @Override
    public InStockVO setJinanWarehouse(Long jinanWarehouse) {
        this.jinanWarehouse = jinanWarehouse;
        return this;
    }

    @Override
    public Long getGuangdongWarehouse() {
        return guangdongWarehouse;
    }

    @Override
    public InStockVO setGuangdongWarehouse(Long guangdongWarehouse) {
        this.guangdongWarehouse = guangdongWarehouse;
        return this;
    }

    @Override
    public Long getShouhouWarehouse() {
        return shouhouWarehouse;
    }

    @Override
    public InStockVO setShouhouWarehouse(Long shouhouWarehouse) {
        this.shouhouWarehouse = shouhouWarehouse;
        return this;
    }

    public Double getPrice() {
        return price;
    }

    public InStockVO setPrice(Double price) {
        this.price = price;
        return this;
    }

    public Long getInStockNum() {
        return inStockNum;
    }

    public InStockVO setInStockNum(Long inStockNum) {
        this.inStockNum = inStockNum;
        return this;
    }

    public Date getDate() {
        return date;
    }

    public InStockVO setDate(Date date) {
        this.date = date;
        return this;
    }
}
